#include "SListhead.h"

int main() {
	SListNode* phead = NULL;
	//SListType x;
	SListPushBack(&phead, 1);
	SListNode* pos_1;
	pos_1 = SListGetPos(phead, 1);
	SListInsertPos(pos_1, 24);
	SListPrint(phead);
	SListErasePos(pos_1);
	SListErasePos(pos_1);
	SListPrint(phead);
	SListPushBack(&phead, 2);
	SListPushBack(&phead, 3);
	SListPushBack(&phead, 4);
	SListPushBack(&phead, 5);
	SListPushBack(&phead, 6);

	SListPopFront(&phead);
	SListPopFront(&phead);
	SListPopFront(&phead);

	SListPushFront(&phead, 7);
	SListPushFront(&phead, 8);
	SListPushFront(&phead, 9);
	SListPushFront(&phead, 10);
	SListPushFront(&phead, 11);
	SListPrint(phead);
	SListInsertAfter(&phead, 8, 78);
	SListPrint(phead);
	SListEraseAfter(&phead, 8);
	SListPrint(phead);
	SListReplace(phead, 8, 88);
	SListPrint(phead);
	SListType e=346;
	SListGet(phead, 6, &e);
	printf("%d\n", e);
	//SListDestory(&phead);
	int cnt;
	cnt=SListLenth(phead);
	SListPrint(phead);
	printf("%d\n", cnt);
	SListNode* pos;
	pos=SListGetPos(phead, 88);
	SListInsertPos( pos, 24);
	SListPrint(phead); 
	SListErasePos(pos);
	SListPrint(phead);
	SListNode* arr;
	SListType a[] = { 5,6,7,8,9,0,123,124 };
	int aSize = 8;
	//SListCreatFront(&arr, a, aSize);
	SListCreatBack(&arr, a, aSize);
	SListPrint(arr);
	SListReverse(&arr);
	SListPrint(arr);
	return 0;
}